1. Field of the Invention
The present invention relates to systems and methods for analytically modeling data organized and stored in a relational database, and, more particularly, to analytically modeling data organized according to non-referred attributes.
2. Description of the Prior Art
Online analytical processing (OLAP) is a key part of many data warehouse and business analysis systems. OLAP services provide for fast analysis of multidimensional information. For this purpose, OLAP services provide for multidimensional access and navigation of data in an intuitive and natural way, providing a global view of data that can be drilled down into particular data of interest. Speed and response time are important attributes of OLAP services that allow users to browse and analyze data online in an efficient manner. Further, OLAP services typically provide analytical tools to rank, aggregate, and calculate lead and lag indicators for the data under analysis.
In this context, an OLAP cube may be modeled according to a user's perception of the data. The cube may have multiple dimensions, each dimension modeled according to attributes of the data. Typically, there is a hierarchy associated with each dimension. For example, a time dimension can consist of years subdivided into months subdivided into weeks subdivided into days, while a geography dimension can consist of countries subdivided into states subdivided into cities. Dimension members act as indices for identifying a particular cell or range of cells within the cube.
OLAP services are often used to analytically model data that is stored in a relational database such as, for example, an Online Transactional Processing (OLTP) database. Data stored in a relational database may be organized according to multiple tables with each table having data corresponding to a particular data type. A table corresponding to a particular data type may be organized according to columns corresponding to data attributes. For example, data corresponding to the type “Sales” may be organized in a “Sales” table with columns “Product” and “Quantity Sold”. Data corresponding to the type “Stock” may be organized in a “Stock” table with columns “Product”, “Aisle”, and “Quantity Stocked”. The “Sales” table does not reference the “Aisle” attribute. Thus, the sales of a particular product cannot be allocated across multiple aisles.
It is often desirable, however, to organize data from a table according to the attributes of another table. For example, it may be desirable to organize data from the “Sales” table according to the “Aisle” attribute of the “Stock” table to evaluate the number of sales for a particular aisle or for a particular set of aisles. Accordingly, a need exists for a system and method for analytically modeling data whereby data from a first table may be organized according to the attributes of a second table.